The present invention relates generally to testing electronic circuits, and, more particularly, to a system for testing error detection circuits.
In recent years, advancements in the field of technology have resulted in electrical and electronic systems becoming an integral part of automobiles. Automobiles are equipped with microcontrollers (also known as engine control units or ECUs) that control many various functions of the automobile. An ECU receives inputs from sensors mounted on different parts of the automobile. For example, a crankshaft position sensor transmits the angular position of the crankshaft to the ECU, based on which the ECU controls fuel injection and spark plug firing. Various other sensors are provided for sensing pressure, speed, and temperature of different automobile parts, which allow the ECU to control other functions of the automobile.
Automotive ECUs are required to comply with stringent safety regulations that require monitoring of the sensor inputs and the automotive control systems to ensure that a precise output is generated for a given set of inputs. A conventional method for monitoring the sensor inputs involves using a redundant channel that includes a processor core, a bus, an interrupt controller, a memory controller, and other processor core related modules, in addition to a primary channel. The redundant channel functions in lock-step with the primary channel and replicates the calculations performed by the primary channel based on the sensor inputs. The outputs produced by the primary and redundant channels at different stages of processing are tested for equality by error detection circuits, such as a redundancy control and checker unit (RCCU). An RCCU detects deviation in the outputs at any stage of processing and issues a warning about a potential malfunction.
One conventional scheme for testing error detection circuits uses a microcontroller and a board level scan/set circuitry for inserting and capturing faults in the error detection circuits. The microcontroller uses a pre-stored program to inject and capture faults. Another conventional scheme uses an automated fixture that enables a robot arm mechanism to position a probe at a designated test node of an error detection circuit being tested and apply fault signals thereto. The above schemes for testing error detection circuits require additional testing equipment (i.e., the microcontroller and the robotic arm mechanism), which entails high manufacturing costs. Additionally, such testing schemes are used to test the circuits post-manufacturing and before shipping, which makes it difficult to detect any malfunction during the operational life of the error detection circuits.
Therefore, it would be advantageous to have a system for testing error detection circuits that is capable of detecting malfunctions during the operational life of the error detection circuits that is inexpensive and that overcomes the above-mentioned limitations of conventional test systems.